<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://tempuri.org/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://tempuri.org/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">WSNIM Web服务接口</wsdl:documentation>
  <wsdl:types>
    <s:schema elementFormDefault="qualified" targetNamespace="http://tempuri.org/">
      <s:element name="isValid">
        <s:complexType />
      </s:element>
      <s:element name="isValidResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="isValidResult" type="s:boolean" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="AuthHeader" type="tns:AuthHeader" />
      <s:complexType name="AuthHeader">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="UserName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Password" type="s:string" />
        </s:sequence>
        <s:anyAttribute />
      </s:complexType>
      <s:element name="getRegions">
        <s:complexType />
      </s:element>
      <s:element name="getRegionsResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getRegionsResult" type="tns:ArrayOfRegion" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ArrayOfRegion">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="Region" nillable="true" type="tns:Region" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Region">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="RegionID" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="RegionName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="PlantName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="RegionDescription" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Principal" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Experts" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="ParentID" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="BMID" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="HouseNum1" nillable="true" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="HouseNum2" nillable="true" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="HouseNum3" nillable="true" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:element name="getNodesByRegionID">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="regionId" type="s:int" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getNodesByRegionIDResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getNodesByRegionIDResult" type="tns:ArrayOfNode" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ArrayOfNode">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="Node" nillable="true" type="tns:Node" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Node">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="BMID" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="ID" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="HouseName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Location" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="SensorTypeList" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="BoardCategory" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="Period" nillable="true" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="RunningStatus" nillable="true" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="PowerRank" nillable="true" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="LastUpdate" nillable="true" type="s:dateTime" />
          <s:element minOccurs="1" maxOccurs="1" name="NodeType" nillable="true" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="DeviceNumber" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="ShortAddress" nillable="true" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="LongAddress" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="CtrDevNumber" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="SignalIntensity" nillable="true" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="ParSAddr" nillable="true" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="SensorNumber" nillable="true" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="LastUpdateStatus" nillable="true" type="s:dateTime" />
        </s:sequence>
      </s:complexType>
      <s:element name="getNodesByBMID">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="bmId" type="s:int" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getNodesByBMIDResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getNodesByBMIDResult" type="tns:ArrayOfNode" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getEnvInfoDetails">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="nodeId" type="s:int" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getEnvInfoDetailsResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getEnvInfoDetailsResult" type="tns:ArrayOfEnvInfoDetail" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ArrayOfEnvInfoDetail">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="EnvInfoDetail" nillable="true" type="tns:EnvInfoDetail" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="EnvInfoDetail">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Code" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Format" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ShortName" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="Value" type="s:double" />
          <s:element minOccurs="0" maxOccurs="1" name="Unit" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="Time" type="s:dateTime" />
        </s:sequence>
      </s:complexType>
      <s:element name="getWeatherPointsByRegionId">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="regionId" type="s:int" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getWeatherPointsByRegionIdResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getWeatherPointsByRegionIdResult" type="tns:ArrayOfEnvInfoDetail" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getWeatherPointsByBMId">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="bmId" type="s:int" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getWeatherPointsByBMIdResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getWeatherPointsByBMIdResult" type="tns:ArrayOfEnvInfoDetail" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getMonitorCategories">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="nodeId" type="s:int" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getMonitorCategoriesResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getMonitorCategoriesResult" type="tns:ArrayOfMonitorCategoryDetail" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ArrayOfMonitorCategoryDetail">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="MonitorCategoryDetail" nillable="true" type="tns:MonitorCategoryDetail" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="MonitorCategoryDetail">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Code" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ShortName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Unit" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:element name="getEnvInfosByStat">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="nodeId" type="s:int" />
            <s:element minOccurs="0" maxOccurs="1" name="time" type="s:string" />
            <s:element minOccurs="1" maxOccurs="1" name="type" type="s:int" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getEnvInfosByStatResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getEnvInfosByStatResult" type="tns:ArrayOfEnvInfoStat" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ArrayOfEnvInfoStat">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="EnvInfoStat" nillable="true" type="tns:EnvInfoStat" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="EnvInfoStat">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="ID" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="NodeID" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="Type" type="s:unsignedByte" />
          <s:element minOccurs="1" maxOccurs="1" name="Time" type="s:dateTime" />
          <s:element minOccurs="1" maxOccurs="1" name="V1" nillable="true" type="s:double" />
          <s:element minOccurs="1" maxOccurs="1" name="V2" nillable="true" type="s:double" />
          <s:element minOccurs="1" maxOccurs="1" name="V3" nillable="true" type="s:double" />
          <s:element minOccurs="1" maxOccurs="1" name="V4" nillable="true" type="s:double" />
          <s:element minOccurs="1" maxOccurs="1" name="V5" nillable="true" type="s:double" />
          <s:element minOccurs="1" maxOccurs="1" name="V6" nillable="true" type="s:double" />
          <s:element minOccurs="1" maxOccurs="1" name="V7" nillable="true" type="s:double" />
          <s:element minOccurs="1" maxOccurs="1" name="V8" nillable="true" type="s:double" />
          <s:element minOccurs="1" maxOccurs="1" name="V9" nillable="true" type="s:double" />
          <s:element minOccurs="1" maxOccurs="1" name="V10" nillable="true" type="s:double" />
          <s:element minOccurs="1" maxOccurs="1" name="V11" nillable="true" type="s:double" />
          <s:element minOccurs="1" maxOccurs="1" name="V12" nillable="true" type="s:double" />
        </s:sequence>
      </s:complexType>
      <s:element name="getDevices">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="nodeId" type="s:int" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getDevicesResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getDevicesResult" type="tns:ArrayOfDevice" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ArrayOfDevice">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="Device" nillable="true" type="tns:Device" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="Device">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="ID" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="TMID" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="PortID" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Location" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Type" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="Status" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="Remark" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="BMID" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="OpenType" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="Invalid" type="s:boolean" />
        </s:sequence>
      </s:complexType>
      <s:element name="sendDeviceCommand">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="deviceId" type="s:int" />
            <s:element minOccurs="1" maxOccurs="1" name="openType" type="s:int" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="sendDeviceCommandResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="sendDeviceCommandResult" type="s:boolean" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="sendDeviceCommandDetail">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="deviceId" type="s:int" />
            <s:element minOccurs="1" maxOccurs="1" name="openType" type="s:int" />
            <s:element minOccurs="1" maxOccurs="1" name="ctrTime" type="s:int" />
            <s:element minOccurs="1" maxOccurs="1" name="ctrIntensity" type="s:int" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="sendDeviceCommandDetailResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="sendDeviceCommandDetailResult" type="s:boolean" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getMapInfo">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="regionId" type="s:int" />
            <s:element minOccurs="1" maxOccurs="1" name="type" type="s:int" />
            <s:element minOccurs="0" maxOccurs="1" name="code" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getMapInfoResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getMapInfoResult" type="tns:MapInfo" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="MapInfo">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="ID" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="RegionID" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="ViewCode" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="ViewType" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="Points0" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Points1" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Points2" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="SwitchLevel0" nillable="true" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="SwitchLevel1" nillable="true" type="s:int" />
        </s:sequence>
      </s:complexType>
      <s:element name="getCameras">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="regionId" type="s:int" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getCamerasResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getCamerasResult" type="tns:ArrayOfCameraDetail" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ArrayOfCameraDetail">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="CameraDetail" nillable="true" type="tns:CameraDetail" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="CameraDetail">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="ID" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="RegionID" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="HouseName" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Location" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:element name="getCameraSnapshot">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="cameraId" type="s:int" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="getCameraSnapshotResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="getCameraSnapshotResult" type="tns:CameraSnapshot" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="CameraSnapshot">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="ID" type="s:int" />
          <s:element minOccurs="1" maxOccurs="1" name="CameraID" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="FileName" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="AddTime" type="s:dateTime" />
        </s:sequence>
      </s:complexType>
    </s:schema>
  </wsdl:types>
  <wsdl:message name="isValidSoapIn">
    <wsdl:part name="parameters" element="tns:isValid" />
  </wsdl:message>
  <wsdl:message name="isValidSoapOut">
    <wsdl:part name="parameters" element="tns:isValidResponse" />
  </wsdl:message>
  <wsdl:message name="isValidAuthHeader">
    <wsdl:part name="AuthHeader" element="tns:AuthHeader" />
  </wsdl:message>
  <wsdl:message name="getRegionsSoapIn">
    <wsdl:part name="parameters" element="tns:getRegions" />
  </wsdl:message>
  <wsdl:message name="getRegionsSoapOut">
    <wsdl:part name="parameters" element="tns:getRegionsResponse" />
  </wsdl:message>
  <wsdl:message name="getRegionsAuthHeader">
    <wsdl:part name="AuthHeader" element="tns:AuthHeader" />
  </wsdl:message>
  <wsdl:message name="getNodesByRegionIDSoapIn">
    <wsdl:part name="parameters" element="tns:getNodesByRegionID" />
  </wsdl:message>
  <wsdl:message name="getNodesByRegionIDSoapOut">
    <wsdl:part name="parameters" element="tns:getNodesByRegionIDResponse" />
  </wsdl:message>
  <wsdl:message name="getNodesByRegionIDAuthHeader">
    <wsdl:part name="AuthHeader" element="tns:AuthHeader" />
  </wsdl:message>
  <wsdl:message name="getNodesByBMIDSoapIn">
    <wsdl:part name="parameters" element="tns:getNodesByBMID" />
  </wsdl:message>
  <wsdl:message name="getNodesByBMIDSoapOut">
    <wsdl:part name="parameters" element="tns:getNodesByBMIDResponse" />
  </wsdl:message>
  <wsdl:message name="getNodesByBMIDAuthHeader">
    <wsdl:part name="AuthHeader" element="tns:AuthHeader" />
  </wsdl:message>
  <wsdl:message name="getEnvInfoDetailsSoapIn">
    <wsdl:part name="parameters" element="tns:getEnvInfoDetails" />
  </wsdl:message>
  <wsdl:message name="getEnvInfoDetailsSoapOut">
    <wsdl:part name="parameters" element="tns:getEnvInfoDetailsResponse" />
  </wsdl:message>
  <wsdl:message name="getEnvInfoDetailsAuthHeader">
    <wsdl:part name="AuthHeader" element="tns:AuthHeader" />
  </wsdl:message>
  <wsdl:message name="getWeatherPointsByRegionIdSoapIn">
    <wsdl:part name="parameters" element="tns:getWeatherPointsByRegionId" />
  </wsdl:message>
  <wsdl:message name="getWeatherPointsByRegionIdSoapOut">
    <wsdl:part name="parameters" element="tns:getWeatherPointsByRegionIdResponse" />
  </wsdl:message>
  <wsdl:message name="getWeatherPointsByRegionIdAuthHeader">
    <wsdl:part name="AuthHeader" element="tns:AuthHeader" />
  </wsdl:message>
  <wsdl:message name="getWeatherPointsByBMIdSoapIn">
    <wsdl:part name="parameters" element="tns:getWeatherPointsByBMId" />
  </wsdl:message>
  <wsdl:message name="getWeatherPointsByBMIdSoapOut">
    <wsdl:part name="parameters" element="tns:getWeatherPointsByBMIdResponse" />
  </wsdl:message>
  <wsdl:message name="getWeatherPointsByBMIdAuthHeader">
    <wsdl:part name="AuthHeader" element="tns:AuthHeader" />
  </wsdl:message>
  <wsdl:message name="getMonitorCategoriesSoapIn">
    <wsdl:part name="parameters" element="tns:getMonitorCategories" />
  </wsdl:message>
  <wsdl:message name="getMonitorCategoriesSoapOut">
    <wsdl:part name="parameters" element="tns:getMonitorCategoriesResponse" />
  </wsdl:message>
  <wsdl:message name="getMonitorCategoriesAuthHeader">
    <wsdl:part name="AuthHeader" element="tns:AuthHeader" />
  </wsdl:message>
  <wsdl:message name="getEnvInfosByStatSoapIn">
    <wsdl:part name="parameters" element="tns:getEnvInfosByStat" />
  </wsdl:message>
  <wsdl:message name="getEnvInfosByStatSoapOut">
    <wsdl:part name="parameters" element="tns:getEnvInfosByStatResponse" />
  </wsdl:message>
  <wsdl:message name="getEnvInfosByStatAuthHeader">
    <wsdl:part name="AuthHeader" element="tns:AuthHeader" />
  </wsdl:message>
  <wsdl:message name="getDevicesSoapIn">
    <wsdl:part name="parameters" element="tns:getDevices" />
  </wsdl:message>
  <wsdl:message name="getDevicesSoapOut">
    <wsdl:part name="parameters" element="tns:getDevicesResponse" />
  </wsdl:message>
  <wsdl:message name="getDevicesAuthHeader">
    <wsdl:part name="AuthHeader" element="tns:AuthHeader" />
  </wsdl:message>
  <wsdl:message name="sendDeviceCommandSoapIn">
    <wsdl:part name="parameters" element="tns:sendDeviceCommand" />
  </wsdl:message>
  <wsdl:message name="sendDeviceCommandSoapOut">
    <wsdl:part name="parameters" element="tns:sendDeviceCommandResponse" />
  </wsdl:message>
  <wsdl:message name="sendDeviceCommandAuthHeader">
    <wsdl:part name="AuthHeader" element="tns:AuthHeader" />
  </wsdl:message>
  <wsdl:message name="sendDeviceCommandDetailSoapIn">
    <wsdl:part name="parameters" element="tns:sendDeviceCommandDetail" />
  </wsdl:message>
  <wsdl:message name="sendDeviceCommandDetailSoapOut">
    <wsdl:part name="parameters" element="tns:sendDeviceCommandDetailResponse" />
  </wsdl:message>
  <wsdl:message name="sendDeviceCommandDetailAuthHeader">
    <wsdl:part name="AuthHeader" element="tns:AuthHeader" />
  </wsdl:message>
  <wsdl:message name="getMapInfoSoapIn">
    <wsdl:part name="parameters" element="tns:getMapInfo" />
  </wsdl:message>
  <wsdl:message name="getMapInfoSoapOut">
    <wsdl:part name="parameters" element="tns:getMapInfoResponse" />
  </wsdl:message>
  <wsdl:message name="getMapInfoAuthHeader">
    <wsdl:part name="AuthHeader" element="tns:AuthHeader" />
  </wsdl:message>
  <wsdl:message name="getCamerasSoapIn">
    <wsdl:part name="parameters" element="tns:getCameras" />
  </wsdl:message>
  <wsdl:message name="getCamerasSoapOut">
    <wsdl:part name="parameters" element="tns:getCamerasResponse" />
  </wsdl:message>
  <wsdl:message name="getCamerasAuthHeader">
    <wsdl:part name="AuthHeader" element="tns:AuthHeader" />
  </wsdl:message>
  <wsdl:message name="getCameraSnapshotSoapIn">
    <wsdl:part name="parameters" element="tns:getCameraSnapshot" />
  </wsdl:message>
  <wsdl:message name="getCameraSnapshotSoapOut">
    <wsdl:part name="parameters" element="tns:getCameraSnapshotResponse" />
  </wsdl:message>
  <wsdl:message name="getCameraSnapshotAuthHeader">
    <wsdl:part name="AuthHeader" element="tns:AuthHeader" />
  </wsdl:message>
  <wsdl:portType name="ServiceSoap">
    <wsdl:operation name="isValid">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;b&gt;校验用户信息是否正确&lt;/b&gt;&lt;br/&gt;返回：校验结果</wsdl:documentation>
      <wsdl:input message="tns:isValidSoapIn" />
      <wsdl:output message="tns:isValidSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getRegions">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;b&gt;获取基地列表&lt;/b&gt;&lt;br/&gt;返回：所有基地列表</wsdl:documentation>
      <wsdl:input message="tns:getRegionsSoapIn" />
      <wsdl:output message="tns:getRegionsSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getNodesByRegionID">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;b&gt;按照基地编号获取节点列表&lt;/b&gt;&lt;br/&gt;regionId - 基地编号&lt;br/&gt;返回：指定基地下所有节点列表</wsdl:documentation>
      <wsdl:input message="tns:getNodesByRegionIDSoapIn" />
      <wsdl:output message="tns:getNodesByRegionIDSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getNodesByBMID">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;b&gt;按照基地网关编码获取节点列表&lt;/b&gt;&lt;br/&gt;bmId - 基地网关编码&lt;br/&gt;返回：指定基地下所有节点列表</wsdl:documentation>
      <wsdl:input message="tns:getNodesByBMIDSoapIn" />
      <wsdl:output message="tns:getNodesByBMIDSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getEnvInfoDetails">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;b&gt;获取节点实时数据&lt;/b&gt;&lt;br/&gt;nodeId - 节点编号&lt;br/&gt;返回：获取指定节点当前实时数据</wsdl:documentation>
      <wsdl:input message="tns:getEnvInfoDetailsSoapIn" />
      <wsdl:output message="tns:getEnvInfoDetailsSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getWeatherPointsByRegionId">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;b&gt;根据基地编号获取气象点数据&lt;/b&gt;&lt;br/&gt;regionId - 基地编号&lt;br/&gt;返回：获取指定基地气象点实时数据</wsdl:documentation>
      <wsdl:input message="tns:getWeatherPointsByRegionIdSoapIn" />
      <wsdl:output message="tns:getWeatherPointsByRegionIdSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getWeatherPointsByBMId">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;b&gt;根据基地网关编码获取气象点数据&lt;/b&gt;&lt;br/&gt;bmId - 基地网关编码&lt;br/&gt;返回：获取指定基地气象点实时数据</wsdl:documentation>
      <wsdl:input message="tns:getWeatherPointsByBMIdSoapIn" />
      <wsdl:output message="tns:getWeatherPointsByBMIdSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getMonitorCategories">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;b&gt;根据节点编号获取节点监测类型信息&lt;/b&gt;&lt;br/&gt;nodeId - 节点编号&lt;br/&gt;返回：获取节点包含的监测类型信息</wsdl:documentation>
      <wsdl:input message="tns:getMonitorCategoriesSoapIn" />
      <wsdl:output message="tns:getMonitorCategoriesSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getEnvInfosByStat">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;b&gt;根据节点编号和日期获取节点统计数据&lt;/b&gt;&lt;br/&gt;nodeId - 节点编号&lt;br/&gt;time - 日期，格式：yyyy-MM-dd&lt;br/&gt;type - 1：小时平均值；2：小时最小值；3：小时最大值；6：日平均值；7：日最小值；8：日最大值&lt;br/&gt;返回：获取节点统计数据</wsdl:documentation>
      <wsdl:input message="tns:getEnvInfosByStatSoapIn" />
      <wsdl:output message="tns:getEnvInfosByStatSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getDevices">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;b&gt;根据节点编号获取设备列表&lt;/b&gt;&lt;br/&gt;nodeId - 节点编号&lt;br/&gt;返回：获取指定节点下所有设备列表</wsdl:documentation>
      <wsdl:input message="tns:getDevicesSoapIn" />
      <wsdl:output message="tns:getDevicesSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="sendDeviceCommand">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;b&gt;发送设备指令&lt;/b&gt;&lt;br/&gt;deviceId - 设备编号&lt;br/&gt;openType - 命令：0 - 关闭，1 - 打开（向上），2 - 打开（向下）&lt;br/&gt;返回：发送设备指令是否成功</wsdl:documentation>
      <wsdl:input message="tns:sendDeviceCommandSoapIn" />
      <wsdl:output message="tns:sendDeviceCommandSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="sendDeviceCommandDetail">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;b&gt;发送设备控制详细指令，包含开关状态、控制时间、控制强度&lt;/b&gt;&lt;br/&gt;deviceId - 设备编号&lt;br/&gt;openType - 命令：0 - 关闭，1 - 打开（向上），2 - 打开（向下）&lt;br/&gt;ctrTime - 控制时间(单位为秒)&lt;br/&gt;ctrIntensity - 控制强度 0-100&lt;br/&gt;返回：发送设备指令是否成功</wsdl:documentation>
      <wsdl:input message="tns:sendDeviceCommandDetailSoapIn" />
      <wsdl:output message="tns:sendDeviceCommandDetailSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getMapInfo">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;b&gt;获取基地、大棚/温室、节点对应地图信息&lt;/b&gt;&lt;br/&gt;regionId - 所在基地编号&lt;br/&gt;type - 地图信息类型：0 - 基地地图信息；1 - 大棚/温室地图信息；2 - 节点地图信息&lt;br/&gt;code - 附加编码：type为0时此值为空，传空字符串即可；type为1时此值为需要获取的大棚/温室名称；type为2时此值为节点编号&lt;br/&gt;返回：基地、大棚/温室、节点对应地图信息</wsdl:documentation>
      <wsdl:input message="tns:getMapInfoSoapIn" />
      <wsdl:output message="tns:getMapInfoSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getCameras">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;b&gt;获取基地下摄像头列表&lt;/b&gt;&lt;br/&gt;regionId - 所在基地编号&lt;br/&gt;返回：摄像头信息列表</wsdl:documentation>
      <wsdl:input message="tns:getCamerasSoapIn" />
      <wsdl:output message="tns:getCamerasSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="getCameraSnapshot">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">&lt;b&gt;获取摄像头最近快照信息&lt;/b&gt;&lt;br/&gt;cameraId - 摄像头编号&lt;br/&gt;返回：摄像头快照信息，快照保存位置：http://平台地址/Snapshot/</wsdl:documentation>
      <wsdl:input message="tns:getCameraSnapshotSoapIn" />
      <wsdl:output message="tns:getCameraSnapshotSoapOut" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="ServiceSoap" type="tns:ServiceSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="isValid">
      <soap:operation soapAction="http://tempuri.org/isValid" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:isValidAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getRegions">
      <soap:operation soapAction="http://tempuri.org/getRegions" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getRegionsAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getNodesByRegionID">
      <soap:operation soapAction="http://tempuri.org/getNodesByRegionID" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getNodesByRegionIDAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getNodesByBMID">
      <soap:operation soapAction="http://tempuri.org/getNodesByBMID" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getNodesByBMIDAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getEnvInfoDetails">
      <soap:operation soapAction="http://tempuri.org/getEnvInfoDetails" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getEnvInfoDetailsAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getWeatherPointsByRegionId">
      <soap:operation soapAction="http://tempuri.org/getWeatherPointsByRegionId" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getWeatherPointsByRegionIdAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getWeatherPointsByBMId">
      <soap:operation soapAction="http://tempuri.org/getWeatherPointsByBMId" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getWeatherPointsByBMIdAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getMonitorCategories">
      <soap:operation soapAction="http://tempuri.org/getMonitorCategories" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getMonitorCategoriesAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getEnvInfosByStat">
      <soap:operation soapAction="http://tempuri.org/getEnvInfosByStat" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getEnvInfosByStatAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getDevices">
      <soap:operation soapAction="http://tempuri.org/getDevices" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getDevicesAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="sendDeviceCommand">
      <soap:operation soapAction="http://tempuri.org/sendDeviceCommand" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:sendDeviceCommandAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="sendDeviceCommandDetail">
      <soap:operation soapAction="http://tempuri.org/sendDeviceCommandDetail" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:sendDeviceCommandDetailAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getMapInfo">
      <soap:operation soapAction="http://tempuri.org/getMapInfo" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getMapInfoAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getCameras">
      <soap:operation soapAction="http://tempuri.org/getCameras" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getCamerasAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getCameraSnapshot">
      <soap:operation soapAction="http://tempuri.org/getCameraSnapshot" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
        <soap:header message="tns:getCameraSnapshotAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="ServiceSoap12" type="tns:ServiceSoap">
    <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="isValid">
      <soap12:operation soapAction="http://tempuri.org/isValid" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:isValidAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getRegions">
      <soap12:operation soapAction="http://tempuri.org/getRegions" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getRegionsAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getNodesByRegionID">
      <soap12:operation soapAction="http://tempuri.org/getNodesByRegionID" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getNodesByRegionIDAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getNodesByBMID">
      <soap12:operation soapAction="http://tempuri.org/getNodesByBMID" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getNodesByBMIDAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getEnvInfoDetails">
      <soap12:operation soapAction="http://tempuri.org/getEnvInfoDetails" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getEnvInfoDetailsAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getWeatherPointsByRegionId">
      <soap12:operation soapAction="http://tempuri.org/getWeatherPointsByRegionId" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getWeatherPointsByRegionIdAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getWeatherPointsByBMId">
      <soap12:operation soapAction="http://tempuri.org/getWeatherPointsByBMId" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getWeatherPointsByBMIdAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getMonitorCategories">
      <soap12:operation soapAction="http://tempuri.org/getMonitorCategories" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getMonitorCategoriesAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getEnvInfosByStat">
      <soap12:operation soapAction="http://tempuri.org/getEnvInfosByStat" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getEnvInfosByStatAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getDevices">
      <soap12:operation soapAction="http://tempuri.org/getDevices" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getDevicesAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="sendDeviceCommand">
      <soap12:operation soapAction="http://tempuri.org/sendDeviceCommand" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:sendDeviceCommandAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="sendDeviceCommandDetail">
      <soap12:operation soapAction="http://tempuri.org/sendDeviceCommandDetail" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:sendDeviceCommandDetailAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getMapInfo">
      <soap12:operation soapAction="http://tempuri.org/getMapInfo" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getMapInfoAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getCameras">
      <soap12:operation soapAction="http://tempuri.org/getCameras" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getCamerasAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getCameraSnapshot">
      <soap12:operation soapAction="http://tempuri.org/getCameraSnapshot" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
        <soap12:header message="tns:getCameraSnapshotAuthHeader" part="AuthHeader" use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="Service">
    <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">WSNIM Web服务接口</wsdl:documentation>
    <wsdl:port name="ServiceSoap" binding="tns:ServiceSoap">
      <soap:address location="http://222.179.44.55:5000/service/service.asmx" />
    </wsdl:port>
    <wsdl:port name="ServiceSoap12" binding="tns:ServiceSoap12">
      <soap12:address location="http://222.179.44.55:5000/service/service.asmx" />
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>